Database Connection এবং Query Execution গাইড ও নোট

Computer Programming - প্যাসক্যাল (Pascal) - Database Integration (ডেটাবেস ইন্টিগ্রেশন)
229

ডেটাবেসের সাথে যোগাযোগ (Connection) এবং কোয়েরি এক্সিকিউশন (Query Execution) প্রোগ্রামিংয়ে গুরুত্বপূর্ণ অংশ, যেখানে ডেটাবেস থেকে ডেটা পড়া, লেখার, আপডেট করার এবং ডিলিট করার কাজ করা হয়। প্যাসক্যাল ভাষায় ডেটাবেস কানেকশন ও কোয়েরি এক্সিকিউশনের জন্য সাধারণত SQL ব্যবহার করা হয়, তবে প্যাসক্যাল নিজে ডেটাবেস কানেকশনের জন্য কোনও ডেটাবেস লাইব্রেরি সরাসরি প্রোভাইড করে না। তবে, প্যাসক্যালের সাথে কাজ করার জন্য SQL database connection করতে আমরা তৃতীয় পক্ষের লাইব্রেরি যেমন ZeosLib বা SQLdb ব্যবহার করতে পারি।

এখানে, আমি প্যাসক্যালের মাধ্যমে ডেটাবেস কানেকশন এবং কোয়েরি এক্সিকিউশন এর একটি সাধারণ উদাহরণ দেব।


প্রয়োজনীয় উপাদান

  1. ZeosLib বা SQLdb প্যাকেজ: প্যাসক্যাল প্রোগ্রামিংয়ের সাথে ডেটাবেস কানেকশন তৈরির জন্য সাধারণত এই লাইব্রেরি ব্যবহৃত হয়।
  2. SQL Query: ডেটাবেসে ডেটা রিট্রিভ (SELECT), ইনসার্ট (INSERT), আপডেট (UPDATE), এবং ডিলিট (DELETE) করার জন্য SQL কোয়েরি ব্যবহার করতে হয়।

SQLdb লাইব্রেরি ব্যবহার করে প্যাসক্যাল ডেটাবেস কানেকশন এবং কোয়েরি এক্সিকিউশন

SQLdb লাইব্রেরিটি প্যাসক্যালের একটি গুরুত্বপূর্ণ লাইব্রেরি, যা ডেটাবেস কানেকশনের জন্য ব্যবহৃত হয় এবং এটি বিভিন্ন ডেটাবেস যেমন MySQL, PostgreSQL, SQLite ইত্যাদির সাথে কাজ করতে সক্ষম।

MySQL ডেটাবেসে কানেকশন এবং কোয়েরি এক্সিকিউশন উদাহরণ:

ধাপ ১: SQLdb লাইব্রেরি ইন্সটল করা
আপনি যদি SQLdb লাইব্রেরি ইন্সটল না করে থাকেন, তবে প্যাসক্যালের জন্য নির্দিষ্ট প্যাকেজ ম্যানেজার ব্যবহার করে এটি ইন্সটল করতে হবে।

ধাপ ২: ডেটাবেস কানেকশন এবং কোয়েরি এক্সিকিউশন

program DatabaseConnectionExample;
uses
  SysUtils, SQLDB, SQLite3Conn;  { SQLite3Conn, SQLDB ব্যবহার করা হবে }

var
  Conn: TSQLConnector;  { ডেটাবেস কানেকশনের জন্য }
  Query: TSQLQuery;  { কোয়েরি এক্সিকিউশনের জন্য }
  ResultSet: String;

begin
  try
    { ডেটাবেস কানেকশন তৈরি করা }
    Conn := TSQLConnector.Create(nil);
    Conn.ConnectorType := 'SQLite3';  { SQLite3 কানেকশন প্রকার }
    Conn.DatabaseName := 'test.db';  { ডেটাবেসের নাম }
    Conn.Open;  { কানেকশন ওপেন করা }

    { SQL কোয়েরি এক্সিকিউট করা }
    Query := TSQLQuery.Create(nil);
    Query.SQL.Text := 'SELECT * FROM users';  { SQL কোয়েরি }
    Query.DataBase := Conn;  { ডেটাবেসের সাথে কোয়েরি সংযুক্ত করা }
    Query.Open;  { কোয়েরি এক্সিকিউট করা }

    { ডেটা রিটার্ন করে আউটপুট দেখানো }
    while not Query.EOF do
    begin
      ResultSet := Query.FieldByName('name').AsString;  { রিটার্ন করা ডেটা }
      writeln('User Name: ', ResultSet);
      Query.Next;  { পরবর্তী রেকর্ডে যাওয়া }
    end;

  except
    on E: Exception do
      writeln('Error: ', E.Message);
  end;
end.

ব্যাখ্যা:

  1. SQLConnector: এটি ডেটাবেসের সাথে কানেক্ট হওয়ার জন্য ব্যবহৃত হয়। এখানে SQLite3 কানেকশনের জন্য এটি সেট করা হয়েছে।
  2. TSQLQuery: এটি SQL কোয়েরি এক্সিকিউট করতে ব্যবহৃত হয়। SQL.Text দিয়ে SQL কোয়েরি নির্দিষ্ট করা হয়, এবং তারপর Open কল করে কোয়েরি এক্সিকিউট করা হয়।
  3. FieldByName: এই মেথডটি একটি নির্দিষ্ট কলামের মান রিটার্ন করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, এখানে name কলাম থেকে ডেটা রিটার্ন করা হচ্ছে।
  4. EOF: এটি চেক করে যে কোয়েরির শেষে পৌঁছানো হয়েছে কিনা। যদি না পৌঁছায়, তবে পরবর্তী রেকর্ডে যেতে Next মেথড ব্যবহার করা হয়।

MySQL ব্যবহার করে প্যাসক্যাল ডেটাবেস কানেকশন এবং কোয়েরি এক্সিকিউশন

এখানে আমরা MySQL ডেটাবেস ব্যবহার করব এবং কোয়েরি এক্সিকিউশন দেখব।

MySQL কানেকশনের জন্য ZeosLib লাইব্রেরি ব্যবহার:

program MySQLDatabaseConnection;
uses
  SysUtils, ZConnection, ZDataset;

var
  Conn: TZConnection;  { MySQL কানেকশন }
  Query: TZQuery;  { MySQL কোয়েরি }
  ResultSet: String;

begin
  try
    { MySQL ডেটাবেসে কানেকশন }
    Conn := TZConnection.Create(nil);
    Conn.HostName := 'localhost';  { MySQL সার্ভারের হোস্টনেম }
    Conn.Database := 'testdb';  { ডেটাবেসের নাম }
    Conn.User := 'root';  { ইউজারনেম }
    Conn.Password := '';  { পাসওয়ার্ড }
    Conn.Connect;  { কানেকশন ওপেন করা }

    { SQL কোয়েরি এক্সিকিউট করা }
    Query := TZQuery.Create(nil);
    Query.SQL.Text := 'SELECT * FROM users';
    Query.Connection := Conn;  { কানেকশন সেট করা }
    Query.Open;  { কোয়েরি এক্সিকিউট করা }

    { ডেটা রিটার্ন করে আউটপুট দেখানো }
    while not Query.EOF do
    begin
      ResultSet := Query.FieldByName('name').AsString;
      writeln('User Name: ', ResultSet);
      Query.Next;  { পরবর্তী রেকর্ডে যাওয়া }
    end;

  except
    on E: Exception do
      writeln('Error: ', E.Message);
  end;
end.

এখানে:

  • TZConnection: এটি ZeosLib লাইব্রেরির মাধ্যমে MySQL ডেটাবেস কানেকশন তৈরি করে।
  • TZQuery: এটি কোয়েরি এক্সিকিউশন পরিচালনা করে এবং ডেটাবেস থেকে রেকর্ড নেয়।

সারাংশ

ডেটাবেস কানেকশন এবং কোয়েরি এক্সিকিউশনের জন্য প্যাসক্যাল সাধারণত তৃতীয় পক্ষের লাইব্রেরি ব্যবহার করে, যেমন ZeosLib বা SQLdb। আপনি যদি প্যাসক্যালের মাধ্যমে ডেটাবেসের সাথে যোগাযোগ করতে চান, তাহলে আপনাকে সেই লাইব্রেরি ডাউনলোড এবং ইনস্টল করতে হবে। এরপর আপনি SQL কোয়েরি ব্যবহার করে ডেটাবেসে ডেটা রিট্রিভ, ইনসার্ট, আপডেট এবং ডিলিট করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...